//
//  ViewController.m
//  08-UITableView
//
//  Created by 402030900@qq.com on 16/7/25.
//  Copyright © 2016年 402030900@qq.com. All rights reserved.
//

#import "ViewController.h"
#import "UIView+Frame.h"
#define kTableViewReuse @"tableViewCell"
// 必须签订
@interface ViewController ()<UITableViewDelegate,UITableViewDataSource>
// 计数器
@property(nonatomic,assign)NSInteger numberCount;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    self.numberCount = 0;
    self.navigationController.navigationBarHidden = YES; // 隐藏Navigation
    // UITableView
    // 1.基本创建
    UITableView * tableView = [[UITableView alloc]initWithFrame:self.view.bounds style:(UITableViewStyleGrouped)];
    [self.view addSubview:tableView];
    tableView.alwaysBounceVertical = YES; // 使视图有滚动效果,tableView默认开启
    // 2.相关属性
//    tableView.rowHeight = 100; // 行高,默认44;
    tableView.separatorColor = [UIColor redColor]; // 分割线颜色
    tableView.separatorStyle = 1; // 分割线样式 默认为1
//    UITableViewCellSeparatorStyleNone,
//    UITableViewCellSeparatorStyleSingleLine,
//    UITableViewCellSeparatorStyleSingleLineEtched
    tableView.estimatedRowHeight = 100; // 预估行高度
    UIView * headerView = [[UIView alloc]initWithFrame:CGRectMake(1000, 1000, self.view.bounds.size.width, 200)]; // x,y 不影响视图位置大小
    headerView.backgroundColor = [UIColor greenColor];
    [tableView beginUpdates]; // 如果tableView要进行频繁修改,必须要加上beginUpdates.endUpdates
    tableView.tableHeaderView = headerView; // 头视图 通常用来放轮播图,个人资料
    tableView.tableHeaderView.lyr_height = 400;
    [tableView endUpdates];
//    UIView * footerView = [[UIView alloc]initWithFrame:CGRectMake(0, 500, self.view.lyr_width, 400)];// footerView x影响视图位置,y不会
//    footerView.backgroundColor = [UIColor orangeColor];
//    tableView.tableFooterView = footerView;
    // 3.tableView数据展示
    tableView.delegate = self; // 代理
    tableView.dataSource = self; // 数据源,用于展示数据
    tableView.tableFooterView = [[UIView alloc]init];// 隐藏多余tableView的空cell
    [tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:kTableViewReuse];
    
    
    
    
    // Do any additional setup after loading the view, typically from a nib.
}
// 返回数据源个数
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return 20;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    // 创建方法1
//    UITableViewCell * cell = [UITableViewCell alloc][initWithStyle(UITableViewCellStyleSubtitle) reuseIdentifier:kTableViewReuse];
    // 从重用池取出对应标识的cell
    // 创建方法2
//    UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:kTableViewReuse];
//   //  如果从重用池取出的cell为空,创建一个新的cell
//    if (cell == nil) {
//         cell = [[UITableViewCell alloc]initWithStyle:(UITableViewCellStyleValue1) reuseIdentifier:kTableViewReuse];
//        _numberCount ++;
//        NSLog(@"创建新cell---%@---%ld",cell,_numberCount);
//    }else{
//        NSLog(@"创建旧cell---@%@",cell);
//    }
    // 创建方法3
    // 注:注册出来的cellStyle是Default 没有副标题
        UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:kTableViewReuse];
  
//    UITableViewCellStyleDefault,
//    UITableViewCellStyleValue1, 左主标题 右副标题
//    UITableViewCellStyleValue2, 小字号 蓝色主标题 黑色副标题 紧挨
//    UITableViewCellStyleSubtitle 主副标题上下紧挨,主标题字号大,副标题字号小
    // 主标题
    cell.textLabel.text = @"123";
    // 副标题
    cell.detailTextLabel.text = @"12:12"; // 注:cellStyleDefault下不显示副标题
    cell.imageView.image = [UIImage imageNamed:@"my"];
    return cell;

}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
